package com.ruoyi.cems.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;

/**
 * 变量控制;对象 bms_emergency_variable_control
 * 
 * @author ruoyi
 * @date 2024-06-24
 */
@Data
@ApiModel(description = "变量控制")
public class BmsEmergencyVariableControl extends BmsBaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 任务单号 */
    @Excel(name = "任务单号")
    @ApiModelProperty("任务单号")
    private String taskNo;

    /** 任务名稱 */
    @Excel(name = "任务名称")
    @ApiModelProperty("任务名称")
    private String taskName;

    /** EOC地点 */
    @Excel(name = "EOC地点")
    @ApiModelProperty("EOC地点")
    private String eocAddress;

    /** 流水号 */
    @Excel(name = "流水号")
    @ApiModelProperty("流水号")
    private String no;
    /** 状态 */
    @Excel(name = "状态")
    @ApiModelProperty("状态（0-禁用，1-草稿，2-启用）")
    private String status;

    /** 填表日期 */
    @ApiModelProperty("填表日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "填表日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fillDate;


    @ApiModelProperty("变量控制联络表")
    private List<BmsEVCContact> evcContacts;

    @ApiModelProperty("备降机场联络信息表")
    private List<BmsEvcAlternateAirport>evcAlternateAirports;

    @ApiModelProperty("属地应急办联络信息表")
    private List<BmsEvcBelongOfficeContact>evcBelongOfficeContacts;

    @ApiModelProperty("单位编码")
    private String unitCode;

    private String userName;
    private String userJobNumber;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("ID", getID())
            .append("REVISION", getREVISION())
            .append("taskNo", getTaskNo())
            .append("taskName",getTaskName())
            .append("eocAddress", getEocAddress())
            .append("no", getNo())
            .append("fillDate", getFillDate())
            .toString();
    }
}
